package com.uroad.jilinpda.common;

/***
 * 指令
 * 0x100001-  自己编造的
 * @author Administrator
 *
 */
public interface Cmd {

	/**0x01表示渠道证书1（001C文件）*/
	public static final int CMD_01 = 0x01;


	/**ICC复位响应握手响应   返回读卡器中的ICC卡复位操作结果*/
	public static final int CMD_B2 = 0xB2;

	/** APP握手 A2 APP和读卡器建立握手 */
	public final static int CMD_A2 = 0xA2;

	/**ICC通道指令响应   返回读卡器中的ICC卡通道操作结果*/
	public static final int CMD_B3 = 0xB3;

	/**获取读卡器的电池电量*/
	/**验证2 C1+渠道证书号+渠道证书+Rnd2*/
	public static final int CMD_C2 = 0xC2;

	/**强制读卡器断电*/
	public static final int CMD_C3 = 0xC3;

	/**认证指令1*/
	public static final int CMD_C0 = 0xC0;

	/**验证2 C1+渠道证书号+渠道证书+Rnd2*/
	public final static int CMD_C1 = 0xC1;

	/**国密验证 C4+渠道证书号+渠道证书+Rnd2*/
	public final static int CMD_C4 = 0xC4;

	public final static int CMD_C5 = 0xC5;
	/** APP握手 A5 获取设备表面号 */
	public final static int CMD_A5 = 0xA5;
	/**认证通道指令 A6 对读卡器进行认证*/
	public final static int CMD_A6 = 0xA6;

	/**获取0016文件*/
	public final static String DIRECT_CMD_CARD_0016 = "8010810700A40000023F00020500b0960037";
	public final static int    CMD_CARD_0016        = 0x100000;

	/**卡余额*/
	public final static String DIRECT_CMD_CARD_BALANCE = "8019810700A40000023F00820700A400000210010305805C000204";
	public final static int CMD_CARD_BALANCE = 0x100001;

	/**卡号*/
	public final static String DIRECT_CMD_CARD_NUMBER = "8010810700A40000021001020500B095002B";
	public final static int CMD_CARD_NUMBER = 0x100002;

	/**验证第三步*/
	public final static int CMD_VERITY_C2 = 0x100003;

	/**圈存 初始化*/
	public final static int CMD_DEPOSIT_INIT = 0x100004;

	/**圈存 写卡*/
	public final static int CMD_DEPOSIT_WRITE = 0x100005;

	/**圈存 写卡2*/
	public final static int CMD_DEPOSIT_WRITE2 = 0x100006;

	/**圈存 半条流水3001*/
	public final static int CMD_DEPOSIT_HALF_1 = 0x100007;
	/**卡延期*/
	public final static int CMD_CARD_EXEN = 0xA3;
	/**卡延期蓝牙第二步*/
	public final static int CMD_CARD_EXEN_SECOND = 0xA4;

	/**file0019文件*/
	public final static String DIRECT_CMD_FILE_0019_1 = "8019810700A40000021001820700A40000020019030500B201CC00";
	public final static int CMD_FILE_0019_1 = 0x100008;

	public final static String DIRECT_CMD_FILE_0019_2 = "8019810700A40000021001820700A40000020019030500B202CC00";
	public final static int CMD_FILE_0019_2 = 0x100009;

	/**file0008文件*/
	public final static String DIRECT_CMD_FILE_0008_1 = "8019810700A40000021001820700A40000020008030500B0000064";
	public final static int CMD_FILE_0008_1 = 0x100010;

	public final static String DIRECT_CMD_FILE_0008_2 = "8019810700A40000021001820700A40000020008030500B000641C";
	public final static int CMD_FILE_0008_2 = 0x100011;


	//	8019810700A40000021001820700A40000020009030500B0000064
	//	8019810700A40000021001820700A40000020009030500B0006464
	//	8019810700A40000021001820700A40000020009030500B000C864
	//	8019810700A40000021001820700A40000020009030500B0012C64
	//	8019810700A40000021001820700A40000020009030500B0019064
	//	8019810700A40000021001820700A40000020009030500B001F40C

	/**file0009文件*/
	public final static String DIRECT_CMD_FILE_0009_1 = "8019810700A40000021001820700A40000020009030500B0000064";
	public final static int CMD_FILE_0009_1 = 0x100012;
	public final static String DIRECT_CMD_FILE_0009_2 = "8019810700A40000021001820700A40000020009030500B0006464";
	public final static int CMD_FILE_0009_2 = 0x100013;
	public final static String DIRECT_CMD_FILE_0009_3 = "8019810700A40000021001820700A40000020009030500B000C864";
	public final static int CMD_FILE_0009_3 = 0x100014;
	public final static String DIRECT_CMD_FILE_0009_4 = "8019810700A40000021001820700A40000020009030500B0012C64";
	public final static int CMD_FILE_0009_4 = 0x100015;
	public final static String DIRECT_CMD_FILE_0009_5 = "8019810700A40000021001820700A40000020009030500B0019064";
	public final static int CMD_FILE_0009_5 = 0x100016;
	public final static String DIRECT_CMD_FILE_0009_6 = "8019810700A40000021001820700A40000020009030500B001F40C";
	public final static int CMD_FILE_0009_6 = 0x100017;

	/**PIN为三字节的TLV指令*/
	/**PIN为三字节的TLV指令 并进行圈存初始化 获取圈存金额为0的圈存初始化明文返回*/
	public final static String DIRECT_CMD_CARD_PIN3 = "801C010800200000031234560210805000020B0100000000000440101001";
	public final static int CMD_CARD_PIN3 = 0x1000018;

	/**PIN为六字节的TLV指令*/
	//	public final static String DIRECT_CMD_CARD_PIN6 = "800D010B0020000006313233343536";
	/**PIN为六字节的TLV指令 并进行圈存初始化 获取圈存金额为0的圈存初始化明文返回*/
	public final static String DIRECT_CMD_CARD_PIN6 = "801F010B00200000063132333435360210805000020B0100000000000440101001";
	public final static int CMD_CARD_PIN6 = 0x1000019;


	/**PIN为六字节的TLV指令 并进行圈存初始化 获取圈存金额为0的圈存初始化明文返回*/
	public final static String DIRECT_CMD_CARD_PIN0 = "8020810B00200000063132333435360211805000020B01000000000000000006E410";
	public final static int CMD_CARD_PIN0 = 0x1000020;
	//	public final static String DIRECT_CMD_CARD_PIN3 = "800A01080020000003123456";


	/**OBU系统信息*/
	public final static String DIRECT_CMD_OBU_SYSTEM_INFO = "8010810700A40000023F00020500B0810063";
	public final static int CMD_OBU_SYSTEM_INFO = 0x1000021;

	/**OBU车辆信息*/
	//	public final static String DIRECT_CMD_OBU_CAR_INFO = "8010810700A4000002DF01020500B081004F";
	public final static String DIRECT_CMD_OBU_CAR_INFO = "8023810700A40000023F00820700A4000002DF01030F00B400000A00000000000000003b00";
	public final static int CMD_OBU_CAR_INFO = 0x1000022;
	//标签信息校验
	public final static String DIRECT_CMD_OBU_CAR_INFO2 = "8023810700A40000023F00820700A4000002DF01030F00B400000A00000000000000004F00";

	/**OBUEF02文件*/
	//	public final static String DIRECT_CMD_OBU_CAR_INFO = "8010810700A4000002DF01020500B081004F";
	public final static String DIRECT_CMD_OBU_EF02 = "8019810700A40000023F00820700A4000002DF01030500B2011439";
	public final static int CMD_OBU_EF02 = 0x1000051;

	/**取标签随机数*/
	public final static String DIRECT_CMD_OBU_RANDOM = "800701050084000004";
	public final static int CMD_OBU_RANDOM = 0x1000023;
	/**取卡随机数*/
	public final static String DIRECT_CMD_CARD_RANDOM = "800701050084000004";
	public final static int CMD_CARD_MODIFY_INFO = 0x1000024;

	//国密
	/**OBU修改车辆信息*/
	public final static int CMD_GM_OBU_MODIFY_VEHICLE = 0x100025;
	/**OBU修改系统信息*/
	public final static int CMD_GM_OBU_MODIFY_SYSTEM = 0x100026;
	/**卡片修改0016信息*/
	public final static int CMD_GM_CARD_MODIFY_0016 = 0x100027;
	/**卡片修改0015信息*/
	public final static int CMD_GM_CARD_MODIFY_0015 = 0x100028;
	/**获取obu随机数*/
	public final static int CMD_GM_OBU_RANDOM = 0x100029;
	/**卡片获取随机数*/
	public final static int CMD_GM_CARD_RANDOM = 0x100030;

	//明文
	/**OBU修改车辆信息*/
	public final static int CMD_OBU_MODIFY_VEHICLE = 0x100031;
	/**OBU修改系统信息*/
	public final static int CMD_OBU_MODIFY_SYSTEM = 0x100032;
	/**卡片修改0016信息*/
	public final static int CMD_CARD_MODIFY_0016 = 0x100033;
	/**卡片修改0015信息*/
	public final static int CMD_CARD_MODIFY_0015 = 0x100034;


	public final static String DIRECT_CMD_TO_3F00 = "8010810700A40000023F0002050084000004";
	/**卡片修改0015信息*/
	public final static int CMD_TO_3F00 = 0x100035;

	/**OBU防拆位-1 (预激活2变为激活1)*/
	public final static String DIRECT_CMD_OBU_ACTIVATION = "8010010700A40000023F0002050059000001";
	public final static int DIRECT_CMD_ACTIVATION = 0x100036;

	/**获取防拆为信息*/
	public final static String DIRECT_CMD_OBU_GET_INFO = "8007010500B0810063";
	public final static int DIRECT_CMD_GET_INFO = 0x100037;

	/**5.8G复位卡片*/
	public final static int CMD_RESET_CARD = 0x100038;

	//跳转1001
	public final static int CMD_TO_1001 = 0x100039;
	//读取0015
	public final static int CMD_GET_0015 = 0x100040;
	//读取0019
	public final static int CMD_GET_0019 = 0x100041;
	//psam获取终端号
	public final static int PSAM_GET_SN = 0x100042;
	//psam分散密钥
	public final static int PSAM_GET_DECRYPT1 = 0x100051;
	//psam解密车辆信息
	public final static int PSAM_DECRYPT_VEHICLE = 0x100052;
	//psam分散密钥2
	public final static int PSAM_GET_DECRYPT2 = 0x100053;
	//psam加密车辆信息获取mac2
	public final static int PSAM_ENCRYPTION_VEHICLE = 0x100054;
	//消费初始化
	public final static int CMD_CONSUME_INIT = 0x100043;
	//写0019
	public final static int CMD_WRITE_0019 = 0x100044;
	//psam跳转DF01目录
	public final static int PSAM_TO_DF01 = 0x100045;
	//psam计算mac
	public final static int PSAM_GET_MAC1 = 0x100046;
	//etc卡消费
	public final static int CMD_CONSUME = 0x100047;
	//psam校验mac2
	public final static int PSAM_CHECK_MAC2 = 0x100048;
	//读取卡余额
	public final static int CMD_GET_BALANCE = 0x10009;
	//读取EF01
	public final static int CMD_GET_EF01 = 0x10050;

}
